.scan-page {
  background: #000;
  min-height: 100vh;
  width: 100vw;
  position: relative;
}
.scan-header {
  position: absolute;
  top: 40rpx;
  right: 40rpx;
  z-index: 10;
}
.header-icons {
  background: #fff;
  border-radius: 40rpx;
  display: flex;
  align-items: center;
  padding: 0 32rpx;
  height: 64rpx;
  box-shadow: 0 4rpx 16rpx rgba(0,0,0,0.04);
  gap: 24rpx;
}
.icon-more {
  font-size: 32rpx;
  color: #222;
  margin-right: 16rpx;
}
.icon-scan {
  font-size: 36rpx;
  color: #222;
}
.scan-box {
  width: 520rpx;
  height: 520rpx;
  background: #b3b3b3;
  border-radius: 20rpx;
  margin: 0 auto;
  position: absolute;
  left: 0; right: 0;
  top: 260rpx;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}
.corner {
  position: absolute;
  width: 48rpx;
  height: 48rpx;
  border: 0 solid #fff;
}
.tl {
  left: 0; top: 0;
  border-left-width: 6rpx;
  border-top-width: 6rpx;
  border-top-left-radius: 8rpx;
  border-color: #fff;
  border-style: solid;
}
.tr {
  right: 0; top: 0;
  border-right-width: 6rpx;
  border-top-width: 6rpx;
  border-top-right-radius: 8rpx;
  border-color: #fff;
  border-style: solid;
}
.bl {
  left: 0; bottom: 0;
  border-left-width: 6rpx;
  border-bottom-width: 6rpx;
  border-bottom-left-radius: 8rpx;
  border-color: #fff;
  border-style: solid;
}
.br {
  right: 0; bottom: 0;
  border-right-width: 6rpx;
  border-bottom-width: 6rpx;
  border-bottom-right-radius: 8rpx;
  border-color: #fff;
  border-style: solid;
} 